package com.teemor.blog.mapper;

import com.teemor.blog.bean.condition.TbArticleCondition;
import com.teemor.blog.bean.entity.TbArticle;
import com.teemor.blog.bean.entity.TbArticleWithBLOBs;
import java.util.List;

import com.teemor.blog.bean.dto.output.article.QryArchivesODTo;


public interface TbArticleMapper {
    /**
     * 根据条件查询记录总数
     */
    int countArticleByCondition(TbArticleCondition tbArticleCondition);

    /**
     * 保存记录,不管记录里面的属性是否为空
     */
    int insertArticle(TbArticle tbArticleWithBLOBs);



    /**
     * 根据条件查询记录集
     */
    List<TbArticle> selectArticleByCondition(TbArticleCondition tbArticleCondition);

    /**
     * 根据主键查询记录
     */
    TbArticleWithBLOBs selectArticleByAtcId(Integer atcId);

    /**
     * 根据条件更新属性不为空的记录
     */
    int updateArticleByConditionSelective(TbArticleCondition tbArticleCondition);


    /**
     * 根据条件更新记录
     */
    int updateArticleByCondition(TbArticleCondition tbArticleCondition);

    /**
     * 根据主键更新属性不为空的记录
     */
    int updateArticleByAtcId(TbArticle record);

    List<QryArchivesODTo> archive();
}